package com.axzhengxin.platform.business.mapper;

import com.axzhengxin.platform.business.domain.BizApproveDetail;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * 综合授信信息Mapper接口
 * 
 * @author axzhengxin
 * @date 2021-02-23
 */
public interface BizApproveDetailMapper 
{
    /**
     * 查询综合授信信息
     * 
     * @param approveDetailId 综合授信信息ID
     * @return 综合授信信息
     */
    public BizApproveDetail selectBizApproveDetailById(String approveDetailId);

    /**
     * 查询综合授信信息列表
     * 
     * @param bizApproveDetail 综合授信信息
     * @return 综合授信信息集合
     */
    public List<BizApproveDetail> selectBizApproveDetailList(BizApproveDetail bizApproveDetail);

    /**
     * 新增综合授信信息
     * 
     * @param bizApproveDetail 综合授信信息
     * @return 结果
     */
    public int insertBizApproveDetail(BizApproveDetail bizApproveDetail);

    /**
     * 修改综合授信信息
     * 
     * @param bizApproveDetail 综合授信信息
     * @return 结果
     */
    public int updateBizApproveDetail(BizApproveDetail bizApproveDetail);

    /**
     * 删除综合授信信息
     * 
     * @param approveDetailId 综合授信信息ID
     * @return 结果
     */
    public int deleteBizApproveDetailById(String approveDetailId);

    /**
     * 批量删除综合授信信息
     * 
     * @param approveDetailIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteBizApproveDetailByIds(String[] approveDetailIds);

    /**
     * 综合授信列表
     * @return 集合
     */
    List<BizApproveDetail> bizApproveDetailList(@Param( value = "approveId") String approveId);

    /**
     * 获取最大的序号
     * @param approveId
     * @return 序号
     */
    int selectMaxSortByApproveId(String approveId);

    /**
     * 判断授信金额大小是否符合天剑
     * @param map
     * @return
     */
    Integer checkApproveAmountByReqId(Map<String,Object> map);

    /**
     * 获取综合授信
     * @param list 授信ID集合
     * @return
     */
    List<BizApproveDetail> selectDetailListByApproveIds(List<String> list);

}
